/* your custom css */

@media only screen and (min-device-width: 360px) and (max-device-width: 736px) {
}

@media only screen and (min-width: 1024px) {
}

@media only screen and (max-width: 1023px) {
}

@media only screen and (min-width: 1400px) {
}

@media only screen and (min-width: 1500px) {
}

.mdoc-example h1 {
  margin-top: 0;
}

.mdoc-example {
  margin: 20px 0 70px 0;
}

.mdoc-example code {
  max-height: calc(min(700px, max(350px, 50vh)));
}

.mdoc-example div[id^="mdoc-html-"] {
  position: relative;
  margin-top: 40px;
  margin-bottom: 30px;
  padding: 30px 15px 15px 15px;
  border-radius: 5px;
  border: 1px solid gray;
}

.mdoc-example div[id^="mdoc-html-"]:before {
  content: "LIVE DEMO";
  position: absolute;
  top: -13px;
  left: 15px;
  background: white;
  border: 1px solid gray;
  border-radius: 3px;
  padding: 2px 6px;
  letter-spacing: 0.01em;
  font-size: 13px;
}

.mdoc-example .x-hasError input,
.mdoc-example .x-hasError textarea {
  border-color: red;
}

.mdoc-example .-error {
  color: red;
}

.mdoc-example .-success {
  color: green;
}

.mdoc-example select,
.mdoc-example input:not([type]),
.mdoc-example input[type=text],
.mdoc-example input[type=email],
.mdoc-example input[type=number] {
  margin: 0 5px;
  padding: 5px;
}

.mdoc-example button {
  margin: 0 5px;
  padding: 5px;
}

/*.docs-prevnext {*/
/*  margin-top: 60px;*/
/*}*/

body {

}

input::placeholder,
textarea::placeholder {
  color: #888;
}

.auto-resizable-iframe {
  max-width: 700px;
  margin: 0 auto;
}

.auto-resizable-iframe > div {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
}

.auto-resizable-iframe iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/* -- HOME PAGE -- */

.homeContainer, .mainHomeContainer {
  /*background: #002b36;*/
  background: #15414c;
  color: white;
}

.homeContainer .button {
  margin-bottom: 12px;
  border-color: white;
  color: white;
  font-weight: 600;
  transition: none;
}

.homeContainer .button:hover {
  border-color: #dc322f;
}

.homeContainer .buttonWrapper {
  margin: 0 4px;
}

.projectTitle {
  margin-top: 100px;
  font-size: 80px;
  color: white;
}

.projectTitle small {
  margin-top: 30px;
  line-height: 1.3em;
  font-size: 28px;
  /*color: white;*/
}

@media (max-width: 370px) {

  .projectTitle {
    font-size: 70px;
  }

  .projectTitle small {
    font-size: 24px;
  }
}

.homeContainer .-problem {
  margin: 24px auto;
  max-width: 700px;
  font-size: 18px;
  /*text-align: left;*/
  line-height: 1.5;
}

@media (max-width: 600px) {
  .homeContainer .-problem {
    /*text-align: left;*/
  }
}

.homeContainer .-problem a {
  color: white;
  text-decoration: underline;
}

.homeContainer .-problem a:hover {
  padding: 5px;
  margin: -5px;
  background: rgba(213, 49, 48, 0.6);
}

.-homeSection {
  padding: 60px 0 40px 0;
  font-size: 18px;
  color: rgba(255, 255, 255, 0.7);
}

.x-dark {
  /*background: #15414c;*/
  background: #002b36;
}

.-homeSection h1 {
  display: inline-block;
  margin-top: 0;
  padding: 10px 15px;
  color: white;
  background: #dc322f;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.-homeSection h2 {
  margin-top: 30px;
  font-size: 1.4em;
  color: white;
}

@media (max-width: 600px) {

  .-homeSection h1 {
    margin-bottom: 5px;
  }

  .-homeSection h2 {
    margin-top: 50px;
  }
}

.-homeSection .wrapper {
  text-align: center;
}

.-homeSection .blockContent .gridBlock {
  font-size: 17px;
}

.-homeSection a {
  color: white;
  text-decoration: underline;
}

.-homeSection a:not(.x-noHover):hover,
.-homeSection u.pseudolink:hover {
  padding: 5px;
  margin: -5px;
  background: rgba(213, 49, 48, 0.6);
}

.-homeGetStartedSection {
  padding-top: 50px;
}

.-homeGetStartedSection h1 {
  margin-bottom: 35px;
}

.-homeGetStartedSection h2 {
  margin-top: 50px;
}

.-homeGetStartedSection .-blogLink {
  font-size: 120%;
}

.-homeCommunitySection {
  margin: 40px auto 0 auto;
  padding: 0 10px 80px 10px;
  max-width: 700px;
  text-align: center;
}

.-homeCommunitySection .-narrower {
  margin-left: auto;
  margin-right: auto;
  max-width: 600px;
}

.-homeCommunitySection hr {
  margin: 30px auto;
  /*border-bottom: none;*/
  /*border-top: 1px solid white;*/
  max-width: calc(min(300px, 50vw));
}

.-homeCommunitySection .-emoji {
  color: white; /* returns opacity to 100% */
}

.-homeCommunitySection h2 {
  /*font-size: 150%;*/
  margin-top: 30px;
  /*margin-bottom: 30px;*/
}

.-homeVideo {
  margin: 30px auto;
}

.-homeSection .-sponsorsList {
  margin-left: auto;
  margin-right: auto;
}

.-sponsorsList {
  display: flex;
  flex-direction: row;
  column-gap: 40px;
  row-gap: 20px;
  margin-bottom: 40px;
  flex-wrap: wrap;
}

.post .-sponsorsList {
  max-width: 700px;
}

.-sponsorsList .-sponsor {
  min-width: 280px;
}

@media(max-width: 699px) {

  .-sponsorsList {
    flex-direction: column;
    row-gap: 10px;
    max-width: 400px;
  }

  .-sponsorsList.x-alignItemsStart,
  .-sponsorsList.x-alignItemsCenter,
  .-sponsorsList.x-alignItemsEnd
  {
    align-items: start !important;
  }

  .-sponsorsList.x-justifyContentCenter {
    justify-content: normal !important;
  }

  .-sponsorsList .-sponsor.x-alignSelfEnd {
    align-self: inherit !important;
  }

  .-sponsorsList .-sponsor.x-aurinko {
    max-width: 300px;
    top: 0 !important;
  }
}

@media(min-width: 1024px) and (max-width: 1399px) {

  /* #Warning: should be same as above, except with .post prepended,
   *  so that it only applies to blog posts.
   *  This is because the right sidebar makes the content narrower, ugh.
   */

  .post .-sponsorsList {
    flex-direction: column;
    row-gap: 10px;
    max-width: 400px;
  }

  .post .-sponsorsList.x-alignItemsStart,
  .post .-sponsorsList.x-alignItemsCenter,
  .post .-sponsorsList.x-alignItemsEnd
  {
    align-items: start !important;
  }

  .post .-sponsorsList .-sponsor.x-aurinko {
    max-width: 300px;
    top: 0 !important;
  }
}

.-sponsorsList.x-alignItemsStart {
  align-items: start;
}

.-sponsorsList.x-alignItemsCenter {
  align-items: center;
}

.-sponsorsList.x-alignItemsEnd {
  align-items: end;
}

.-sponsorsList.x-justifyContentCenter {
  justify-content: center;
}

@media(min-width: 700px) {

  .-homeSection .-sponsorsList {

  }


}

.-sponsorsList .-sponsor {
  position: relative;
  left: -0.2em;
  display: flex;
  margin: 20px 0;
  /*width: 400px;*/
  /*text-align: left;*/
  flex-grow: 1;
  flex-basis: 0;
}

.-sponsorsList .-sponsor.x-empty {
  /* This empty "sponsor" fills the 2x2 grid. */
  /* Because it's empty, we allow the sibling sponsor to use up some of its space */
  margin-left: -80px;
}

.-sponsorsList .-sponsor.x-alignSelfEnd {
  align-self: end;
}

.-sponsorsList .-sponsor.x-company a {
  text-decoration: none !important;
}

.-sponsorsList .-sponsor.x-company .-tagline {
  font-size: 90%;
}

.-sponsorsList .-sponsor.x-person .-avatar {
  position: relative;
  top: 4px;
  width: 90px;
  height: 90px;
  margin-right: 20px;
}

.-sponsorsList .-sponsor.x-person .-avatar.x-rounded {
  border-radius: 17px;
}

.-sponsorsList .-sponsor.x-person .-avatar.x-rounded-sm {
  border-radius: 6px;
}

.-sponsorsList .-sponsor.x-person .-text {
  text-align: left;
}

.-sponsorsList .-sponsor.x-person .-name {
  font-size: 130%;
  white-space: nowrap; /* Fix for Firefox, which splits the name on focus due to margin-right being -5px for some reason */
}

.-sponsorsList .-sponsor.x-person .-description {
  font-size: 90%;
}

.-sponsorsList .-sponsor.x-aurinko {
  text-align: center;
}

.-homeSection .-sponsorsList .-sponsor.x-aurinko {
  position: relative;
  top: 0;

  &:first-of-type {
    max-width: 280px;
  }
}

.-homeSection .-sponsorsList {
  color: white;
}

.post .-sponsorsList .-sponsor.x-aurinko {
  position: relative;
  top: 5px;

  &:first-of-type {
    max-width: 300px;
  }
}

.post .-sponsorsList .-sponsor.x-company .-tagline {
  color: black;
}

.post .-sponsorsList .-sponsor.x-company .-tagline u {
  color: #dc322f;
}

.post .-sponsorsList a.-sponsor.x-person .-description {
  color: black;
}

.-sponsorsList .-sponsor.x-heartai {
  text-align: center;
}

.-sponsorsList .-sponsor.x-heartai {
  position: relative;
  top: 5px;
  max-width: max(300px, calc(50% - 20px));
}

.-sponsorsList .-sponsor.x-heartai .-logo {
  width: 320px;
}

.post .-newSponsorLogoLink .-logo.x-heartai {
  margin-top: 5px;
  width: 320px;
}


/* Header */

.nav-site a {
  font-weight: 500 !important;
}

/* Blog posts */

.posts .post {
  margin-bottom: 50px !important;
}

/* Blog post */

.post .postHeader .post-meta {
  display: inline-block;
  font-size: 14px;
  color: #999;
}

.post .postHeader .authorBlock {
  position: relative;
  display: inline-block;
  margin-left: 25px;
  font-size: 14px;
}

.post .postHeader .authorBlock:before {
  content: "by";
  position: absolute;
  left: -20px;
  color: #999;
}

.post h4.x-like-h3 {
  /* Looks like h3 but, being h4, it does not appear in the table of contents */
  font-size: 20px;
}

/* Docs sidebar */

.onPageNav:empty {
  display: none;
}

.tocToggler {
  display: none; /* normally it shows up (only) on example page for some reason, but it's empty */
}

@media only screen and (min-width: 1024px) {
  .onPageNav {
    flex: 0 0 350px;
  }

  .onPageNav .toc-headings a {
    font-size: 13px;
  }
}

/* Footer */

.nav-footer .github-column p {
  margin: 5px 0;
}
